Computer and recording medium

ABSTRACT

A computer to which multiple operation units can be connected is caused to function as a reception unit that receives identification information and operation information from each operation unit that is connected, an association setting unit that sets an association between connected operation units based on the identification information received from the connected operation units and an association condition that is set in advance, and an execution unit that executes processing on the same processing target based on the operation information received from the associated operation units.

TECHNICAL FIELD

The present invention relates to a computer and a recording medium, and,in particular, relates to a method for establishing an associationbetween multiple operation units.

BACKGROUND ART

The past has seen efforts to develop controllers serving as operationunits, whereby users control specific characters within a game space. Inthe description below, characters controlled by users with controllersare referred to as “player characters”. In order to enable complicatedmanipulation of player characters, controllers are provided withnumerous buttons and joysticks (levers). In addition, there have alsobeen developed games and gaming apparatuses that use two types ofcontrollers on a simultaneous basis in order to improve operability.

For example, a gaming apparatus capable of conducting a game by usingtwo types of controllers on a simultaneous basis has been described inJP-A-2009-72319. According to this Publication, connecting a controllerof one type (hereinafter referred to as the “main controller”) to acontroller of another type (hereinafter referred to as the“sub-controller”) using a cable makes it possible to handle buttons andother input devices provided in the sub-controller in the same manner asthe input devices provided in the main controller. Consequently, thesub-controller and main controller can be handled as a controller pair.

However, in some cases the attached cables may interfere with operationsperformed by the user. Since the main controller can accept the motionand attitude of the main controller itself as operation input usingbuilt-in acceleration sensors and imaging devices, it is sometimesmanipulated by the user by swinging and spinning it around. In suchcases, in particular, the user may feel that the attached cables are anuisance.

In order to prevent this, a method is contemplated, in which a maincontroller and a sub-controller are connected to a gaming apparatus notthrough a cable, but through a wireless connection.

PRIOR ART DOCUMENTS Patent Document

Patent Document 1: JP-A-2009-72319

SUMMARY OF THE INVENTION Problem to be Solved by the Invention

However, when a wireless connection is used, the gaming apparatus has tobe told which main controller will be paired with which sub-controller.Still, so far, no method has been developed for associating a maincontroller and a sub-controller wirelessly connected to a gamingapparatus.

In addition, the main controller and the sub-controller have to beassociated even when each controller is connected to the gamingapparatus over a wired connection. Further, computers other than gamingapparatuses have multiple operation units connected thereto andsometimes it is necessary to associate one operation unit with anotheroperation unit without establishing a direct connection between theoperation units.

The present invention is devised with the above-described circumstancesin mind and it is an object of the invention to provide a method forassociating one operation unit with another operation unit withoutestablishing a direct connection between the operation units in asituation, in which there are multiple operation units intended foroperating a computer.

Means for Solving Problem

A computer provided by a first aspect of the present invention is acomputer to which two or more of one or more types of operation unitsfor performing an operation can be connected, the computer including: areception unit that receives, from each operation unit that isconnected, identification information that is information foridentifying the operation unit, and operation information that isinformation output in accordance with an operation performed on theoperation unit; an association setting unit that sets an associationbetween connected operation units based on the identificationinformation received from the connected operation units and anassociation condition that is set in advance; and an execution unit thatexecutes processing on the same processing target based on the operationinformation received from the associated operation units.

Note that in the present invention, “connection” is a concept thatincludes not only wired connection by a cable or the like, but alsowireless connection by radio communication or the like. Also, an“operation” performed on an operation unit is a concept that includes anoperation of pressing a button that the operation unit is provided with,an operation of tilting or pressing a stick (lever), and the like.Furthermore, moving an operation unit and changing the orientation of anoperation unit are also included in the concept of an “operation”.Moreover, an operation of starting up an operation unit, such as anoperation of pressing (or switching) a power button, is also included inthe concept of an “operation”. In addition, in the present invention, an“association condition” is a condition used for setting the associationof operation units, and examples of the content include “if a operationunit of a second type is connected to a location having only oneoperation unit of a first type connected thereto, an association is setbetween the connected operation unit of the second type and theoperation unit of the first type”, and “if a operation unit of a secondtype is connected to a location having two or more operation units of afirst type connected thereto, an association is set between theconnected operation unit of the second type and an operation unit of thefirst type on which a predetermined operation was performed”.

In a preferable aspect of the present invention, the association settingunit sets an association between, among the connected operation units, afirst operation unit that was selected based on a selection conditionthat is set in advance and a second operation unit that can beassociated with the first operation unit.

In a preferable aspect of the present invention, in a case where theconnected operation units include a first operation and two or moresecond operation units that can be associated with the first operationunit, the association setting unit sets an association between the firstoperation unit and, among the two or more second operation units, asecond operation unit that transmitted predetermined operationinformation.

In a preferable aspect of the present invention, the computer is furthercaused to function as a first presentation control unit that, in a casewhere two or more second operation units exist, causes a firstpresentation unit to present information for prompting a user to performthe predetermined operation on an operation unit that is to beassociated with the first operation unit.

In a preferable aspect of the present invention, the computer is furthercaused to function as a second presentation control unit that, in a casewhere no operation unit that can be associated with a first operationunit is connected, causes a second presentation unit to presentinformation for prompting a user to select an operation unit that is tobe associated with the first operation unit.

In a preferable aspect of the present invention, the association settingunit sets an association between, among the connected operation units,only operation units for which an association is not set.

In a preferable aspect of the present invention, in a case where anoperation unit for which an association has already been set exists, theassociation setting unit also designates an operation unit thattransmitted second predetermined operation information as an associationsetting target.

In a preferable aspect of the present invention, the selection conditionis being a predetermined type of operation unit from among a pluralityof types of operation units.

In a preferable aspect of the present invention, the selection conditionis selection of an operation unit among a plurality of connectedoperation units in order of earliest connection.

In a preferable aspect of the present invention, the two or moreoperation units include two types of operation units, and theassociation condition is association of one type of operation unit tothe other type of operation unit.

In a preferable aspect of the present invention, the execution unitgenerates a game space and an object that performs an action in the gamespace, and executes action processing on the object as the sameprocessing target.

In a preferable aspect of the present invention, the connection isconnection by wireless communication.

A recording medium provided by a second aspect of the present inventionis a computer-readable recording medium having recorded thereon aprogram for causing a computer, to which two or more of one or moretypes of operation units for performing an operation can be connected,to function as: a reception unit that receives, from each operation unitthat is connected, identification information that is information foridentifying the operation unit, and operation information that isinformation output in accordance with an operation performed on theoperation unit; an association setting unit that sets an associationbetween connected operation units based on the identificationinformation received from the connected operation units and anassociation condition that is set in advance; and an execution unit thatexecutes processing on the same processing target based on the operationinformation received from the associated operation units.

In a preferable aspect of the present invention, the association settingunit sets an association between, among the connected operation units, afirst operation unit that was selected based on a selection conditionthat is set in advance and a second operation unit that can beassociated with the first operation unit.

In a preferable aspect of the present invention, in a case where theconnected operation units include a first operation and two or moresecond operation units that can be associated with the first operationunit, the association setting unit sets an association between the firstoperation unit and, among the two or more second operation units, asecond operation unit that transmitted predetermined operationinformation.

In a preferable aspect of the present invention, the computer is furthercaused to function as a first presentation control unit that, in a casewhere two or more second operation units exist, causes a firstpresentation unit to present information for prompting a user to performthe predetermined operation on an operation unit that is to beassociated with the first operation unit.

In a preferable aspect of the present invention, the computer is furthercaused to function as a second presentation control unit that, in a casewhere no operation unit that can be associated with a first operationunit is connected, causes a second presentation unit to presentinformation for prompting a user to select an operation unit that is tobe associated with the first operation unit.

In a preferable aspect of the present invention, the association settingunit sets an association between, among the connected operation units,only operation units for which an association is not set.

In a preferable aspect of the present invention, in a case where anoperation unit for which an association has already been set exists, theassociation setting unit also designates an operation unit thattransmitted second predetermined operation information as an associationsetting target.

In a preferable aspect of the present invention, the selection conditionis being a predetermined type of operation unit from among a pluralityof types of operation units.

In a preferable aspect of the present invention, the selection conditionis selection of an operation unit among a plurality of connectedoperation units in order of earliest connection.

In a preferable aspect of the present invention, the two or moreoperation units include two types of operation units, and theassociation condition is association of one type of operation unit tothe other type of operation unit.

In a preferable aspect of the present invention, the computer is agaming apparatus, and the execution unit generates a game space and anobject that performs an action in the game space, and executes actionprocessing on the object as the same processing target.

In a preferable aspect of the present invention, the connection isconnection by wireless communication.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1A is a diagram for describing a pairing procedure.

FIG. 1B is another diagram for describing a pairing procedure.

FIG. 1C is another diagram for describing a pairing procedure.

FIG. 1D is another diagram for describing a pairing procedure.

FIG. 2 is a configuration diagram of a gaming apparatus according to anembodiment of the present invention.

FIG. 3A is a diagram for describing a controller (main controller).

FIG. 3B is a diagram for describing a controller (sub-controller).

FIG. 4 is a configuration diagram showing an internal configuration of acontroller.

FIG. 5 is a diagram for describing an example of a controller assignmenttable.

FIG. 6 is a flowchart for describing pairing processing.

FIG. 7 is a diagram for describing a pairing procedure.

FIG. 8 is another diagram for describing a pairing procedure.

FIG. 9 is another diagram for describing a pairing procedure.

FIG. 10 is another diagram for describing a pairing procedure.

FIG. 11 is another diagram for describing a pairing procedure.

FIG. 12 is another diagram for describing a pairing procedure.

FIG. 13 is another diagram for describing a pairing procedure.

FIG. 14 is another diagram for describing a pairing procedure.

EMBODIMENTS FOR CARRYING OUT THE INVENTION

The following is a specific description of the case of applying aprogram according to the present invention to game software as apreferred embodiment of the present invention, with reference to theaccompanying drawings. The following description takes the case ofprogressing through an action game in a home gaming apparatus (referredto hereinafter as “gaming apparatus”).

In the action game of the present embodiment, a player character fightsenemy characters in a three-dimensional virtual game space, and the gameprogress as the player character defeats enemy characters. Two types ofcontrollers can be connected to the gaming apparatus using short-rangewireless communication that employs Bluetooth (registered trademark)technology. Note that one example of the gaming apparatus is aPlayStation (registered trademark) 3. When the controllers are used forthe first time, authentication processing is performed with the mainbody of the gaming apparatus (since the concept of a “gaming apparatus”also includes controllers, the term “main body of the gaming apparatus”or simply “main body” will be used when referring to the member to whichthe controllers are connected), and the controllers are authorized asconnection partners. After being authorized, authentication processingand the establishment of a connection are automatically performed whenthe controllers are powered on. In the present embodiment, up to a totalof seven controllers can be connected to the main body of the gamingapparatus. When transmitting transmission data such as operationsignals, the controllers attach identification information (informationfor identifying the controllers, such as an identification number),controller type information, and the like to the transmission data. Uponreceiving transmission data, the main body of the gaming apparatusrecognizes which controller transmitted the transmission data based onthe attached identification information.

Note that the connections between the main body of the gaming apparatusand the controllers are not limited to this, and may be connections bywireless communication using the IrDA communication system that employsinfrared light or the like, or may be wired connections using cables orthe like. Note that in the case where each controller performscommunication using a different frequency or the case of wiredconnections, the main body of the gaming apparatus can recognize thedata communication partners by the carrier frequency or the connectionterminal of the communication line. In other words, it is possible torecognize which controller transmission data was transmitted from. Inthis case, the carrier frequency or which connection terminal acontroller is connected to is considered to be the identificationinformation. Accordingly, there is no need for the controllers to attachseparate identification information to the transmission data.

The user controls the player character using two types of controllers.The user holds and manipulates one of the two controllers with theirright hand mainly in order to control weapon manipulation by the playercharacter. This controller is referred to as the “main controller”(sometimes abbreviated as “MC” below). The user holds and manipulatesthe other controller with their left hand mainly in order to cause theplayer character to perform movement actions. This controller isreferred to as the “sub-controller” (sometimes abbreviated as “SC”below).

If the user uses the main controller or the sub-controllerindependently, the user cannot properly control the player character.Therefore, to permit the user to use both controllers, both of them needto be activated at the beginning of the game. In addition, onesub-controller needs to be associated with one main controller. In thedescription below, the association of a main controller with asub-controller is called “pairing”. The user can control a single playercharacter by using a main controller and a sub-controller associated bypairing.

FIGS. 1A to 1D are for describing the procedure of pairing, andillustrate an example in which a user attempts to start a game in asituation in which only the two sub-controllers SC1 and SC2 have beenactivated.

FIG. 1A illustrates a state in which the sub-controllers SC1 and SC2have been activated, but no main controllers have been activated. Itshould be noted that if the user attempts to start a game in this state,a message that urges the user to activate the main controller isdisplayed on the display screen M. FIG. 1B illustrates a state in whichthe main controller MC1 has been activated because the user P haspressed the power button of the main controller MC1 in the state of FIG.1A. Because at such time the two sub-controllers SC1 and SC2 havealready been activated, a message prompting the user to select thesub-controller to pair up with the main controller MC1 is displayed onthe display screen M. Below, the screen display that prompts theselection is referred to as the “prompt screen”. In the presentembodiment, a message prompting the pressing of the L button isdisplayed on the prompt screen because the pressing of the L button ofthe sub-controller (discussed below) is used to determine pairing. Itshould be noted that there are no limitations as to the operationbuttons used for such determination and it may be any other operationbutton. In addition, there are no limitations as to the pressing of theoperation buttons used for such determination, and any operation can beutilized. For example, an operation involving tilting a joystick (lever)in a predetermined direction may be used. In addition, the activation ofa sub-controller in a state wherein the sub-controller has been inactivemay be used for such determination.

FIG. 1C illustrates a state in which the user P, after looking at theprompt screen displayed on the display screen M, has pressed the Lbutton of the sub-controller SC1. FIG. 1D illustrates a state in whichthe pairing of the main controller MC1 and the sub-controller SC1 iscomplete. It should be noted that in the pairing procedure illustratedin FIGS. 1A to 1D, the term “main controller MC1” corresponds to the“first operation unit” of the present invention, and the terms“sub-controller SC1” and “sub-controller SC2” correspond to the “secondoperation unit” of the present invention. In addition, the operationinformation transmitted by the “pressing of L button” corresponds to the“predetermined operation information” of the present invention and thedisplay of the “prompt screen” corresponds to the presentation performedby the “first presentation unit” of the present invention. In addition,the selection of the “main controller MC1”, i.e. “predetermined type ofoperation unit”, as the “first operation unit” corresponds to the“selection condition” of the present invention.

It should be noted that, in the present embodiment, if no sub-controllerhas been activated in FIG. 1A, activation of any of the sub-controllersupon display of the prompt screen of FIG. 1B results in the pairing ofsaid activated sub-controller with the main controller MC1. This is dueto the fact that there is no need to wait for the pressing of the Lbutton of the sub-controller because it is assumed that the user P wouldlike to pair said activated sub-controller with the main controller MC1.In addition, in such a case, instead of displaying a message thatprompts the pressing of the L button on the prompt screen, a message maybe displayed that prompts the activation of the sub-controller. In sucha case, the display of the “prompt screen” corresponds to thepresentation performed by the “second presentation unit” of the presentinvention. It should be noted that in this case as well, the system maybe adapted to wait for the pressing of the L button of thesub-controller.

In addition, in the present embodiment, if only the sub-controller SC1has been activated in FIG. 1A (and the sub-controller SC2 has not beenactivated), activation of the main controller MC1 results in the pairingof the main controller MC1 and the sub-controller SC1 without displayingthe prompt screen. This is due to the fact that since only thesub-controller SC1 is the activated sub-controller, the user P does nothave to make a selection and the associated sub-controllers are limitedto the sub-controller SC1. As a result, the burden of the selectionoperation performed by the user P is reduced.

In addition, this action game can be played simultaneously by two ormore users. In such a case, in order for two users to control their ownrespective player characters, two main controllers and twosub-controllers will be connected to the gaming apparatus. In this case,different sub-controllers need to be paired up with the respective maincontrollers used by the users. Since a total of seven controllers can beconnected to the gaming apparatus in the present embodiment, pairing canbe performed in three groups in order for three users to playsimultaneously. It should be noted that the number of the controllersconnected to the gaming apparatus is not limited to seven and, inaddition, pairing is not limited to three groups. Examples of processingperformed by the gaming apparatus for pairing purposes (hereinafterreferred to as “pairing processing”) are discussed below. In addition,the specific pairing procedures used when pairing processing is carriedout in various states are also discussed below.

First, the hardware configuration of the present embodiment will bedescribed below.

FIG. 2 is a configuration diagram of the gaming apparatus of the presentembodiment. A gaming apparatus 1 includes a main body 11 and controllers12 a and 12 b. The controllers 12 a and 12 b are connected to the mainbody 11 through short-range wireless communication. Note that althoughFIG. 2 shows a state in which one controller 12 a and one controller 12b are connected, more than one of each can be connected. A monitor 13 isconnected to the main body 11 via a dedicated cable. Also, a disc 14having a game program and game data recorded thereon can be mounted inthe main body 11. Furthermore, a memory card 15 for storing game datawhen necessary can be mounted in the main body 11.

The main body 11 includes a control unit 111, a rendering processingunit 112, an audio processing unit 113, a disc drive unit 114, a memorycard connection unit 115, an I/O interface unit 116, a communicationprocessing unit 117, and a signal transmission/reception unit 118. Therendering processing unit 112, the audio processing unit 113, the I/Ointerface unit 116, and the communication processing unit 117 areconnected to the control unit 111. Also, the disc drive unit 114, thememory card connection unit 115, the signal transmission/reception unit118, and the monitor 13 are connected to the I/O interface unit 116.

A disc 14 having the above-described action game software recordedthereon is mounted in the disc drive unit 114 of the gaming apparatus 1.The game program and game data on the disc 14 are read to a RAM 111 c(described later) in the control unit 111 by the disc drive unit 114.The user can enjoy the game content as the game program is executed by aCPU 111 a (described later). The user can control the player characterand progress through the game by operating the controllers 12 a and 12 b(described later).

The game data on the disc 14 includes character data for a playercharacter, an enemy character, and the like, image data for characters,backgrounds, and the like, audio data for sound effects and the like,various types of tables that are referenced as the game progress andwhen rendering is performed, and the like.

The control unit 111 has a microcomputer that performs overall controlof the operations of the main body 11. The microcomputer is constitutedfrom the CPU 111 a, a ROM 111 b, the RAM 111 c, and the like. Theseconstituent elements are connected to each other by a bus line.

The CPU 111 a performs overall control of game progression by executingthe game program that was read to the RAM 111 c. More specifically, whenoperation signals corresponding to operations performed by the user areinput from the controllers 12 a and 12 b via the signaltransmission/reception unit 118, the CPU 111 a performs predeterminedgame progression processing on those operation signals in accordancewith the game program. Based on the results of that processing, the CPU111 a displays two-dimensional images (referred to hereinafter as “gameimages”) that represent a three-dimensional space, for example, on thedisplay screen of the monitor 13. Based on the processing results, theCPU 111 a also outputs audio such as sound effects to speakers 13 a(described later) of the monitor 13.

In the present embodiment, when the controller 12 a or the controller 12b is started up for the first time, the CPU 111 a performsauthentication processing on the controller and authenticates it as aconnection partner. A specific description of this authenticationprocessing will not be given since it is ordinary authenticationprocessing in Bluetooth (registered trademark) technology. The CPU 111 aalso performs pairing processing, which is processing for associatingthe controller 12 a and the controller 12 b with each other. Details ofthe pairing processing will be discussed later.

The ROM 111 b stores a basic program for causing the gaming apparatus 1to perform basic functions. The basic program includes a program for adisc loading function, which is for reading out the game program and thegame data recorded on the disc 14, for example. When the disc 14 ismounted in the disc drive unit 114, the CPU 111 a causes the disc driveunit 114 to operate in accordance with the basic program in the ROM 111b so as to read the game program and the game data from the disc 14 tothe RAM 111 c, and sets the gaming apparatus 1 to the game start state.

The RAM 111 c provides an area for the storage of the game program andthe game data that are read from the disc 14, and a work area for theCPU 111 a to execute the game program.

The game program is configured by a combination of multiple programssuch as a game progression program and a graphic control program. Thegame progression program is a program for controlling actions performedby the player character PC displayed on the monitor 13 based onoperation signals from the controllers 3 and 4. The graphic controlprogram is a program for controlling game images that are to bedisplayed on the monitor 13. Note that in the present embodiment, theRAM 111 c stores a later-described controller assignment table (see FIG.5).

Based on operation signals from the controllers 12 a and 12 b, the CPU111 a reads the game program, image data, and the like from the disc 14to the RAM 111 c as necessary. The CPU 111 a determines the content ofthe game images to be displayed on the monitor 13 by performingprocessing on such data and executing the game program.

The rendering processing unit 112 performs various types of computationprocessing that is necessary for rendering processing. The CPU 111 aoutputs a rendering instruction to the rendering processing unit 112every 1/60 sec, for example. Here, the CPU 111 a determines an image tobe displayed on the monitor 13, reads out image data (polygon data forobjects such as characters, and background data) that is necessary forrendering the image, light source data, and the like from the RAM 111 c,and supplies the readout data to the rendering processing unit 112. TheCPU 111 a also supplies the rendering processing unit 112 with positiondata for each character and operation signals input from the controllers12 a and 12 b.

Based on these operation signals, the image data, and the like, therendering processing unit 112 computes data necessary for rendering(data regarding the positional relationship between objects and thebackground, the coordinates of polygons that configure the objects onthe screen of the monitor 13, textures corresponding to the polygons,reflection characteristics of the polygons, and the like), and createsdisplay screen image data corresponding to one frame in a video RAM (notshown) in the rendering processing unit 112 based on the result of thecomputation. The display screen image data is displayed by being outputto the monitor 13 as a video signal every 1/60 sec, for example.

The audio processing unit 113 performs various types of computationprocessing that is necessary for processing for generating audio such assound effects. The CPU 111 a determines sound effects or the acousticcontent of background music that is to be output from the speakers 13 aof the monitor 13, and outputs an audio instruction to the audioprocessing unit 113. The audio processing unit 113 reads out a soundeffect or background music audio data from the RAM 111 c based on theaudio instruction. The audio processing unit 113 then subjects the audiodata to predetermined manipulation processing and digital/analogconversion processing, and then outputs the resulting data to thespeakers 13 a.

Based on a loading instruction (readout instruction designating the gameprogram and game data that are to be loaded) from the CPU 111 a, thedisc drive unit 114 reads out the game program and game data that arerecorded on the disc 14.

The memory card connection unit 115 is a unit by which informationregarding game progression is written to and read out from the memorycard 15. When a “data save” instruction is received from the user whilethe game is in progress or when the game is ended, information regardingthe game progression that is recorded in the work area of the RAM 111 c(this information includes, for example, information regarding the typesof game characters that were set by the user and various types of awardssuch as acquired points and items) is recorded to the memory card 15 bythe CPU 111 a via the memory card connection unit 115. Informationregarding game progression that is recorded in the memory card 15 isalso recorded to the RAM 111 c by the CPU 111 a before the game starts.

The I/O interface unit 116 transfers, to the control unit 111, the gameprogram and game data that were read out by the disc drive unit 114 orthe memory card connection unit 115 and operation signals from thecontrollers 3 and 4 that were received by the signaltransmission/reception unit 118. The I/O interface unit 116 alsotransfers video signals, audio signals, and the like from the controlunit 111, the rendering processing unit 112, and the audio processingunit 113 to the monitor 13.

The communication processing unit 117 performs control for transmittingand receiving data in the case where the gaming apparatus 1 performscommunication with another gaming apparatus 1 via a network line 2.Specifically, the communication processing unit 117 transmits, to theother gaming apparatus 1 via the network line 2, operation signals thathave been input from the controllers 12 a and 12 b and signals that havebeen output from the CPU 111 a. The communication processing unit 117also receives signals transmitted from the other gaming apparatus 1 viathe network line 2, and inputs them to the CPU 111 a.

The signal transmission/reception unit 118 receives signals that havebeen transmitted from the controllers 12 a and 12 b by short-rangewireless communication. The signals from the controllers 12 a and 12 binclude operation information regarding operation buttons that thecontrollers 12 a and 12 b are provided with, as well as data detected byvarious sensors 122 (described later) that the controller 12 a isprovided with. The CPU 111 a causes the game to progress using thesesignals transmitted from the controllers 12 a and 12 b. The signaltransmission/reception unit 118 also transmits various types of signals(e.g., a signal for transmitting a controller number (described later))to the controllers 12 a and 12 b.

The monitor 13 is an apparatus for displaying game images that show thestate of game progression according to video signals sent from the mainbody 11, and outputting audio such as sound effects from the speakers 13a according to audio signals sent from the main body 11. The monitor 13is configured by a television receiver or the like that includesexternal input terminals for receiving video signals and audio signals.

The disc 14 is an optical disc such as a DVD-ROM or a CD-ROM. The gameprogram, various types of data necessary for executing the game program,and image data are recorded on the disc 14. The memory card 15 is adata-rewritable nonvolatile recording medium such as a flash memory.Information recorded in the work area of the RAM 111 c disappears whenthe power of the main body 11 of the gaming apparatus is turned off.Accordingly, information regarding game progression that is to bepreserved instead of being allowed to disappear is recorded in thememory card 15 by the CPU 111 a.

The gaming apparatus 1 can connect to the network line 2 (Internet lineor the like) via a network adapter 16. In this case, a game (so-called“online game”) can be played between multiple gaming apparatuses 1 viathe network line 2. Although a game played using only one gamingapparatus is described in the present embodiment, the present inventioncan also be applied to such online games.

The controllers 12 a and 12 b are operated by the user in order to causethe player character to perform actions, and to make various types ofgame-related settings. When the controllers 12 a and 12 b are operatedby the user, operation signals are transferred from the controllers 12 aand 12 b to the control unit 111, and the player character displayed onthe monitor 13 performs predetermined actions. Examples of thepredetermined actions include movement actions such as running,crouching, and jumping, and attack actions for attacking an opponentusing a weapon. The controller 12 a is mainly used for operations forusing weapons that the player character has. The controller 12 b ismainly used for operations for moving the player character to anotherlocation. The controller 12 a corresponds to the above-described maincontroller, and the controller 12 b corresponds to the above-describedsub-controller.

FIGS. 3A and 3B are diagrams for describing the controllers 12 a and 12b. FIG. 3A shows the controller 12 a (referred to as the “maincontroller 12 a” below), and FIG. 3B shows the controller 12 b (referredto as the “sub-controller 12 b” below).

As shown in FIG. 3A, the main controller 12 a includes a power button 12a 1, operation buttons 12 a 2, and a light emitting unit 12 a 3. Also,although not shown, various sensors are included in the main controller12 a. The power button 12 a 1 is a button for switching the power of themain controller 12 a between the on state and the off state each time itis pressed, and thus starts and stops the main controller 12 a. In thepresent embodiment, later-described pairing processing is started whenthe main controller 12 a is activated by pressing the power button 12 a1. The operation buttons 12 a 2 are for displaying a firing sight on thegame screen, causing the player character to fire, and opening a menuand a map. The light emitting unit 12 a 3 is a member for emitting lightin a predetermined case. The light emitting unit 12 a 3 is used fordetecting the position and the like of the main controller 12 a by beingcaptured by a camera (not shown) included in the gaming apparatus 1.Various sensors detect the rotation and tilt of the main controller 12a. This detected information is operation input for identifying the tiltand orientation of the main controller 12 a. For example, the user canmove the sight displayed on the game screen by tilting and moving themain controller 12 a.

As shown in FIG. 3B, the sub-controller 12 b is provided with a powerbutton 12 b 1 and operation buttons 12 b 2 and the like. The powerbutton 12 b 1 is a button used for switching the sub-controller 12 bbetween a power-on and a power-off state whenever the button is pressed,thereby activating and deactivating the sub-controller 12 b. In thepresent embodiment, pairing may sometimes occur when the power button 12b 1 is pressed and the sub-controller 12 b is activated. The operationbuttons and the like 12 b 2 are used for operations for moving theplayer character to another location, and the like. The L stick 12 b 3is included among the operation buttons and the like 12 b 2. The L stick12 b 3 is a stick used to control the movement of the player characterand the like. By tilting the L stick 12 b 3, the user can move theplayer character in the game space in a direction that corresponds tothe direction of the tilt. In addition, the L stick 12 b 3 can bepressed, in which case it operates as an operation button. When operatedas an operation button, the L stick 12 b 3 is referred to as the “Lbutton” and the action of pressing the L stick 12 b 3 is referred to as“pressing the L button”. In the course of pairing processing in thepresent embodiment, such pressing of the L button is used for selectingthe sub-controller 12 b to be paired.

FIG. 4 is a block diagram showing the internal configuration of the maincontroller 12 a. The main controller 12 a includes a control unit 121,various sensors 122, an operation unit 123, and a signaltransmission/reception unit 124. An I/O interface unit 125 is connectedto the control unit 121. The various sensors 122, the operation unit123, and the signal transmission/reception unit 124 are connected to theI/O interface unit 125. The control unit 121 has a microcomputer thatperforms overall control of the main controller 12 a. The microcomputeris constituted from a CPU 121 a, a ROM 121 b, a RAM 121 c, and the like.These constituent elements are connected to each other by a bus line.

The CPU 121 a controls the main controller 12 a based on a controlprogram stored in the ROM 121 b. The RAM 121 c provides a work area forprocessing performed by the CPU 121 a. The ROM 121 b stores the controlprogram for controlling the main controller 12 a.

The various sensors 122 are for detecting rotation and tilting of themain controller 12 a, and include a gyrosensor, an acceleration sensor,and the like. The operation unit 123 detects operations performed on theoperation buttons 12 a 2 as operation signals. The signaltransmission/reception unit 124 transmits information detected by thevarious sensors 122 and operation signals detected by the operation unit123 to the gaming apparatus 1 by short-range wireless communication. Thesignal transmission/reception unit 124 also receives various types ofsignals that are transmitted from the gaming apparatus 1.

Note that a description of the internal configuration of thesub-controller 12 b will not be given since it is similar to theinternal configuration of the main controller 12 a shown in FIG. 4, withthe exception of not being provided with the various sensors 122.

Next is a description of a controller assignment table for assigningcontroller numbers serving as identification information to thecontrollers that are connected to the main body 11 of the gamingapparatus.

FIG. 5 is a diagram for describing an example of the controllerassignment table. The controller assignment table is stored in the RAM111 c. The controller assignment table is rewritten when a controller isconnected to the main body 11 of the gaming apparatus, when a controlleris disconnected from the main body 11 of the gaming apparatus, and whencontrollers connected to the main body 11 of the gaming apparatus arepaired.

In FIG. 5, “Controller number” indicates the number serving asidentification information that is assigned to a controller connected tothe main body 11 of the gaming apparatus. The controller number isassigned regardless of the type of controller. “Controller type” isinformation indicating the types of the controllers that have beenassigned the controller numbers. In FIG. 5, the description “MC” is usedwhen a controller is a main controller 12 a, and the description “SC” isused when a controller is a sub-controller 12 b. “Pairing number”indicates a number assigned in the case where controllers having theassigned controller numbers are paired, and the same number is assignedto paired controllers. In FIG. 5, these numbers are assigned in theorder of pairing. Note that in the present embodiment, one maincontroller 12 a and one sub-controller 12 b are paired with each other.Although not shown in FIG. 5, information that enables identifying theorder of connection is also recorded in the controller assignment table.

When a controller is connected to the main body 11 of the gamingapparatus, a controller number in the controller assignment table thathas not been assigned to another controller is assigned to the connectedcontroller. Specifically, when the signal transmission/reception unit118 receives a signal indicating that a controller has been powered on(a signal indicating that the power button was pressed while in thepower off state, which is referred to hereinafter as the “connectionsignal”), the CPU 111 a references the controller assignment tablestored in the RAM 111 c and acquires an unused controller number. TheCPU 111 a then sets the type of the connected controller in the“controller type” field corresponding to that controller number. Notethat information indicating the type of controller is included in theconnection signal that was received from the controller.

The CPU 111 a also transmits the acquired controller number to theconnected controller via the signal transmission/reception unit 118. TheCPU 121 a of the controller records the received controller number inthe RAM 121 c. When the CPU 121 a transmits an operation signal, itattaches the controller number to the transmitted operation signal asidentification information. Note that the CPU 121 a can use anidentification number that has been assigned to the controller inadvance, instead of using the controller number. In this case, the CPU111 a records the correspondence relationship between thisidentification number and the controller number of the controllerassignment table in the RAM 111 c. When the CPU 121 a transmits anoperation signal, it attaches the identification number to thetransmitted operation signal.

In the case where a controller is disconnected, the information in thecorresponding “controller type” field in the controller assignment tableis deleted, and that controller number is set to the unused state. Also,in the case where controllers are paired, a pairing number is set in the“pairing number” fields corresponding to the paired controllers. Notethat in the case where a controller is disconnected, information in thecorresponding “pairing number” field is also deleted, and information inthe “pairing number” field corresponding to the other controller thathad been paired with that controller is also deleted.

In FIG. 5, the main controller 12 a that has been assigned thecontroller number “0” and the sub-controller 12 b that has been assignedthe controller number “4” have been paired and assigned the pairingnumber “1”, and the main controller 12 a that has been assigned thecontroller number “2” and the sub-controller 12 b that has been assignedthe controller number “5” have been paired and assigned the pairingnumber “2”. Note that the sub-controller 12 b that has been assigned thecontroller number “6” is not paired. Also, the controller numbers “1”and “3” are unused.

In the present embodiment, each player character is associated with apairing number that has been assigned in the controller assignmenttable. For example, in the controller assignment table shown in FIG. 5,it is assumed that a player character PC1 is associated with the pairingnumber “1”, and a player character PC2 is associated with the pairingnumber “2”. In this case, the player character PC1 is controlled withthe main controller 12 a that has been assigned the controller number“0” and the sub-controller 12 b that has been assigned the controllernumber “4”, and the player character PC2 is controlled with the maincontroller 12 a that has been assigned the controller number “2” and thesub-controller 12 b that has been assigned the controller number “5”.Note that the association between the pairing numbers and the playercharacters is not limited to this.

Upon receiving an operation signal from a controller, the CPU 111 arecognizes which player character is to be controlled by the operationsignal based on the controller number attached to the operation signaland the controller assignment table. For example, in the case of theabove-described example, if the controller number attached to theoperation signal is “5”, the CPU 111 a recognizes that the operationsignal was input from the sub-controller 12 b in order to control theplayer character PC2. The CPU 111 a can also recognize the connectionstate and pairing state of each controller by referencing the controllerassignment table.

Next is a description of pairing processing for pairing the maincontroller 12 a and the sub-controller 12 b with each other, withreference to FIG. 6.

FIG. 6 is a flowchart for describing pairing processing performed by theCPU 111 a of the gaming apparatus 1. The pairing processing is startedwhen the main controller 12 a is connected to the main body 11 andbecomes capable of communication therewith. Specifically, the pairingprocessing is started after the signal transmission/reception unit 118has received a connection signal transmitted from the signaltransmission/reception unit 124 of the main controller 12 a and inputthe connection signal to the CPU 111 a, and the CPU 111 a has assigned acontroller number to that main controller 12 a.

First, it is determined whether the main controllers (abbreviated as“MC” in the flowchart shown in FIG. 6 and the description of thisflowchart) in the powered-on (connected) state include an unpaired MC(step S1). This determination is performed by referencing the controllerassignment table (see FIG. 5). Specifically, the CPU 111 a searches thecontroller assignment table in the order of the controller numbers, anddetermines whether there is a controller number for which “MC” isdescribed in the corresponding “controller type” field and there is nosetting in the “pairing number” field. Note that subsequentdeterminations are also performed by the CPU 111 a referencing thecontroller assignment table, and detailed description thereof will notbe given. If an unpaired MC does not exist (step S1: NO), that is tosay, if all of the powered-on MCs are paired, the pairing processingends. If an unpaired MC exists (step S1: YES), the MC that was connectedfirst among the powered-on unpaired MCs is designated as the searchingMC (step S2). The searching MC is an MC that is searching for asub-controller (abbreviated as “SC” in the flowchart shown in FIG. 6 andthe description of this flowchart) to be associated with in the pairingprocessing. In other words, the pairing processing is processing fordetermining an SC that is to be associated with the searching MC. Notethat instead of designating the MC that was connected first as thesearching MC, the MC that became capable of communication first may bedesignated as the searching MC, or the MC having the lowest (or highest)controller number may be designated as the searching MC.

Next, a determination is made as to whether or not there is only oneunpaired powered-on SC (step S3). If there is only one such SC (step S3:YES), that SC is paired with the searching MC (step S4). Specifically, apairing number is configured in the “pairing number” field of thecontroller assignment table that corresponds to the controller number ofthat SC and the controller number of the searching MC.

Next, a determination is made as to whether or not the prompt screen hasbeen displayed (step S5). If it has not been displayed (step S5: NO),the procedure returns to step S1, and if it has been displayed (step S5:YES), then, once the display is over (step S6), the procedure returns tostep S1.

In step S3, if there is not only one unpaired powered-on (step S3: NO),namely, if there are two or more unpaired powered-on SCs or if there arenone, a determination is made as to whether or not there are pairedcontrollers (step S7). The processing of steps S7 to S12 is carried outin order to determine which SC is to be paired in the former case and inorder to activate the SC that is to be paired in the latter case.

In step S7, if there are no paired controllers (step S7: NO), theprocedure advances to step S8. On the other hand, if there are pairedcontrollers (step S7: YES), a determination is made as to whether or notany of the operation buttons of an unpaired MC have been pressed (stepS11). If any of the operation buttons of an unpaired MC have beenpressed (step S11: YES), that MC is designated as the searching MC (stepS12) and the procedure advances to step S8. At such time, if there aremultiple unpaired MCs, the MC for which any operation button has beenpressed is designated as the searching MC. It should be noted that apredetermined operation button may be used instead of any operationbutton in step S11.

In step S11, if none of the operation buttons of an unpaired MC havebeen pressed (step S11: NO), the procedure returns to step S3.Specifically, steps S3, S7, and S11 are repeated until it is determinedthat there is only one unpaired powered-on SC (step S3: YES), that thereare no paired controllers (step S7: NO), or any of the operation buttonsof an unpaired MC have been pressed (step S11: YES).

In step S8, a prompt screen is displayed (step S8). Specifically, themessage “Press the L button of the sub-controller you would like to pairwith the main controller” is displayed on the screen of the monitor 13.It should be noted that an image or animation, in which the L button ofthe sub-controller is pressed, can be displayed instead of, or inaddition to, the above-described message containing such text. Inaddition, the method used for prompting the user for an operation is notlimited to a display on the screen of the monitor 13. For example, aprompt may be provided by voice through the speakers 13 a of the monitor13, or using both a screen display and voice guidance. In addition, thescreen display may be accompanied by a sound effect in order to attractthe attention of the user. In addition, if the main controller orsub-controller is provided with vibration, light-emitting, or audiooutput capabilities, they can be utilized to prompt the user for anoperation.

Next, a determination is made as to whether or not there is only oneunpaired powered-on SC (step S9). If there is only one such SC (step S9:YES), the procedure advances to step S4 and that SC is paired with thesearching MC (step S4). On the other hand, if there is not only one suchSC (step S9: NO), that is to say, if there are two or more unpairedpowered-on SCs or if there are none, a determination is made as towhether or not the L button of any of the SCs has been pressed (stepS10). If the L button of any of the SCs has been pressed (step S10:YES), the procedure advances to step S4 and that SC is paired with thesearching MC (step S4).

In step S10, if none of the SCs has had its L button pressed (step S10:NO), the procedure returns to step S9. Specifically, if there are two ormore unpaired powered-on SCs, steps S9 and S10 are repeated until the Lbutton of any of the SCs is pressed (step S10: YES) or until one or moreSCs are powered off and there is only one unpaired powered-on (step S9:YES). In addition, if there are no unpaired powered-on SCs, steps S9 andS10 are repeated until any of the SCs is turned ON (step S9: YES).

It should be noted that while the flowchart illustrated in FIG. 6 is anexample of pairing processing, pairing processing is not limitedthereto. It is sufficient to configure processing to be carried out inaccordance with pairing conditions. In addition, it is also possible toset pairing conditions in the form of a database, search that databasein response to operation signals supplied from the controllers, andperform pairing in accordance with the corresponding condition.

Next, specific pairing procedures used when pairing processing iscarried out in various states will be described with reference to theflowchart illustrated in FIG. 6 and FIGS. 7 to 14.

FIG. 7 illustrates an example of a situation in which all of thesub-controllers are in a powered-off state and the main controller MC1has been activated. In the description below, the term “main controller”is abbreviated as “MC1” for example, and in addition, the term“sub-controller” is abbreviated as “SC1”. It should be noted that if apattern is provided around the power button 12 a 1 (or 12 b 1) asillustrated in FIG. 7, it shows that the power button 12 a 1 (or 12 b 1)has been pressed and that main controller (or sub-controller) has beenactivated. The same applies to FIGS. 8 to 14 below.

If an MC1 has been activated, pairing processing (see FIG. 6) isstarted. Since there is a powered-on unpaired MC (MC1) (step S1: YES inFIG. 6), the MC1 that was activated first is designated as the searchingMC (step S2 in FIG. 6). Since there are no unpaired powered-on SCs (stepS3: NO in FIG. 6) and there are no paired controllers (step S7: NO inFIG. 6), the prompt screen is displayed (step S8 in FIG. 6).

If the user looking at the prompt screen activates SC1 when steps S9 andS10 in FIG. 6 are repeated, there will be only one unpaired powered-onSC (SC1) (step S9: YES in FIG. 6). As a result, that SC1 is paired withMC1, which is the searching MC (step S4 in FIG. 6). Subsequently, thedisplay of the prompt screen is terminated (steps S5: YES and S6 in FIG.6) and there are no powered-on unpaired MCs (step S1: NO in FIG. 6), asa result of which pairing processing is terminated.

It should be noted that the example of FIG. 7 corresponds to a situationin which none of the sub-controllers have been activated in thepreviously described FIG. 1A.

FIG. 8 illustrates an example of a situation in which the sub-controllerSC1 is in a powered-on state and the main controller MC1 has beenactivated.

When MC1 is activated, pairing processing is started and MC1 isdesignated as the searching MC (steps S1: YES and S2 in FIG. 6). Next,since there is only one unpaired powered-on SC (SC1) (step S3: YES inFIG. 6), that SC1 is paired with MC1, which is the searching MC, withoutdisplaying the prompt screen (step S4 in FIG. 6). Subsequently, sincethe prompt screen view is not displayed (step S5: NO in FIG. 6) andthere are no powered-on unpaired MCs (step S1: NO in FIG. 6), pairingprocessing is terminated. It should be noted that the example of FIG. 8corresponds to a situation in which only the sub-controller SC1 isactivated in the previously described FIG. 1A.

FIG. 9 illustrates an example of a situation in which thesub-controllers SC1 and SC2 are in a powered-on state and the maincontroller MC1 has been activated. It should be noted that if a patternis provided around the L button 12 b 3 of the sub-controller as shown inFIG. 9, this indicates that the L button 12 b 3 has been pressed. Thesame applies to FIGS. 10 to 14 below.

When MC1 is activated, pairing processing is started and MC1 isdesignated as the searching MC (steps S1: YES and S2 in FIG. 6). Next,since there are two unpaired powered-on SCs (SC1 and SC2) (step S3: NOin FIG. 6) and there are no paired controllers (step S7: NO in FIG. 6),the prompt screen is displayed (step S8 in FIG. 6). If the user lookingat the prompt screen presses the L button of SC1 (step S10: YES in FIG.6), that SC1 is paired with MC1, which is the searching MC (step S4 inFIG. 6). Subsequently, the display of the prompt screen is terminatedand pairing processing is terminated (S5: YES, step S6, step S1: NO inFIG. 6). It should be noted that the example of FIG. 9 corresponds tothe example of the previously described FIGS. 1A to 1D.

It should be noted that, in the example of the FIG. 9, if the userlooking at the prompt screen turns SC2 off, there will be only oneunpaired powered-on SC (SC1) (step S9: YES in FIG. 6), as a result ofwhich that SC1 is paired with MC1, which is the searching MC (step S4 inFIG. 6).

It should be noted that in the example of the FIG. 9, pairing conditionsmay be set to ensure pairing of the previously connected sub-controllerSC and MC1, which is the searching MC.

FIG. 10 illustrates an example of a situation in which the maincontroller MC1 has been paired with the sub-controller SC1 and the maincontroller MC2 has been activated. It should be noted that if a patternis provided around the operation buttons 12 a 2 of the main controlleras shown in FIG. 10, this indicates that any one of the operationbuttons 12 a 2 has been pressed. The same applies to FIGS. 12 to 14below.

When MC2 is activated, pairing processing is started and MC2 isdesignated as the searching MC (steps S1: YES and S2 in FIG. 6). Next,since there are no unpaired powered-on SCs (step S3: NO in FIG. 6) andthere are paired controllers (MC1 and SC1) (step S7: YES in FIG. 6),steps S3, S7, and S11 in FIG. 6 are repeated until any of the operationbuttons of the unpaired MC (MC2) are pressed. If the user presses any ofthe operation buttons 12 a 2 of MC2 (step S11: YES in FIG. 6), MC2 isdesignated as the searching MC (step S12 in FIG. 6) and the promptscreen is displayed (step S8 in FIG. 6). In this case, it is conceivablefor the user looking at the prompt screen to activate SC2 again, or topress the L button of the paired SC1.

Since there is only one unpaired powered-on SC (SC2) in the former case(step S9: YES in FIG. 6), that SC2 is paired with MC2, which is thesearching MC (step S4 in FIG. 6). Subsequently, the display of theprompt screen is terminated and pairing processing is terminated (stepS5: YES, step S6, step S1: NO in FIG. 6).

On the other hand, in the latter case (step S10: YES in FIG. 6), thatSC1 is paired with MC2, which is the searching MC, (step S4 in FIG. 6),and the display of the prompt screen is terminated (steps S5: YES and S6in FIG. 6). In this case, the pairing of MC1 with SC1 is deactivated,and there is a powered-on unpaired MC (MC1) (step S1: YES in FIG. 6),and therefore MC1 is designated as a searching MC (step S2 in FIG. 6)and pairing processing continues.

During the subsequent processing, processing in a state is carried outin a state in which MC2 and SC1 are paired up and MC1 has been activated(steps S3, S7, and S11 in FIG. 6 are repeated).

Note that in the case where the determinations of steps S7 and S11 arenot provided, and the prompt screen is displayed (step S8) in the caseof NO in step S3, if the user is not in possession of SC2, it would beimpossible to escape the repetition of the prompt screen display and thepressing of the L button of SC1 unless either MC1 or MC2 is turned off.In addition, if the user did not know that MC1 or MC2 was in apowered-on state (for example, if MC2 was activated without noticingthat MC1 has been paired with SC1), it would be impossible to get out ofthis repetition in this case as well. Therefore, in the presentembodiment, in order to avoid such situations, when there are pairedcontrollers, the prompt screen is displayed (step S8) on the conditionthat any of the operation buttons 12 a 2 of an unpaired MC were pressed(steps S7: YES and S11: YES in FIG. 6). It should be noted that aconfiguration is possible in which the determinations of steps S7 andS11 are not provided, and the prompt screen is displayed (step S8) inthe case of NO in step S3.

FIG. 11 illustrates an exemplary situation in which the main controllerMC1 has been paired up with the sub-controller SC1, the sub-controllerSC2 is in a powered-on state, and the main controller MC2 has beenactivated.

When MC2 is activated, pairing processing is started and MC2 isdesignated as the searching MC (steps S1: YES and S2 in FIG. 6). Next,since there is only one unpaired powered-on SC (SC2) (step S3: YES inFIG. 6), that SC2 is paired with MC2, which is the searching MC, withoutdisplaying the prompt screen (step S4 in FIG. 6). Subsequently, theprompt screen is not displayed (step S5: NO in FIG. 6), and there are nopowered-on unpaired MCs (step S1: NO in FIG. 6), and therefore pairingprocessing is terminated.

FIG. 12 illustrates an exemplary situation in which the main controllerMC1 has been paired up with the sub-controller SC1, the sub-controllersSC2 and SC3 are a powered-on state, and the main controller MC2 has beenactivated.

When MC2 is activated, pairing processing is started and MC2 isdesignated as the searching MC (steps S1: YES and S2 in FIG. 6). Next,since there are two unpaired powered-on SCs (SC2 and SC3) (step S3: NOin FIG. 6), and there are paired controllers (MC1 and SC1) (step S7: YESin FIG. 6), steps S3, S7, and S11 in FIG. 6 are repeated until any ofthe operation buttons of the unpaired MC (MC2) are pressed. If the userpresses any of the operation buttons of MC2 (step S11: YES in FIG. 6),MC2 is designated as the searching MC (step S12 in FIG. 6), and theprompt screen is displayed (step S8 in FIG. 6). When the user pressesthe L button of SC2 (step S10: YES in FIG. 6), that SC2 is paired withMC2, which is the searching MC (step S4 in FIG. 6). Subsequently, thedisplay of the prompt screen is terminated, and pairing processing isterminated (step S5: YES, step S6, step S1: NO in FIG. 6).

It should be noted that in the example of FIG. 12, if the user lookingat the prompt screen turns SC3 off, SC2 is paired with MC2, which is thesearching MC (steps S9: YES and S4 in FIG. 6). In addition, in theexample of FIG. 12, if the user looking at the prompt screen presses theL button of SC1, SC1 is paired with MC2, which is the searching MC(steps S10: YES and S4 in FIG. 6), MC1 is designated as a searching MC(steps S1: YES and S2 in FIG. 6), and pairing processing continues.

FIG. 13 illustrates an exemplary situation in which the main controllersMC1 and MC2 and the sub-controllers SC1 and SC2 are in a powered-onstate.

This situation arises in the case where the user has further activatedthe main controller MC2 while the prompt screen is being displayed inthe example shown in FIG. 9. In this case, steps S9 and S10 continue tobe repeated even when MC2 becomes powered-on. If the user presses the Lbutton of SC1 (step S10: YES in FIG. 6), that SC1 is paired with MC1,which is the searching MC (step S4 in FIG. 6), and the display of theprompt screen is terminated (steps S5: YES and S6 in FIG. 6). In thiscase, there is a powered-on unpaired MC (MC2) (step S1: YES in FIG. 6),and therefore MC2 is designated as the searching MC (step S2 in FIG. 6).Next, since there is only one unpaired powered-on SC (SC2) (step S3: YESin FIG. 6), that SC2 is paired with MC2, which is the searching MC,without displaying the prompt screen (step S4 in FIG. 6), and then thepairing processing is terminated (steps S5: NO and S1: NO in FIG. 6).

Note that even if the sub-controllers SC1 and SC2 are activated at thesame time while the main controllers MC1 and MC2 are active (MC1 wasactivated before MC2), MC1, MC2, SC1, and SC2 are in the powered-onstate, and steps S9 and S10 continue to be repeated. If the user pressesthe L button of SC1 in this state, pairing is performed according to thesame procedure as that described above. Note that if the activation ofSC1 and SC2 is not simultaneous (e.g., SC1 is activated first) while MC1and MC2 are active, there will be only one powered-on unpaired SC (SC1)(step S9: YES in FIG. 6), and therefore SC1 and MC1 are paired up (stepS4 in FIG. 6). Subsequently, MC2 is designated as the searching MC (stepS2 in FIG. 6) and paired with the unpaired SC2 (steps S3: YES and S4 inFIG. 6), and then the pairing processing is terminated.

Note that in the example in FIG. 13, “selection of an operation unit . .. in order of earliest connection” and “being a predetermined type ofoperation unit” correspond to the “selection condition” of the presentinvention, and the “main controller MC1” corresponds to the “operationunit that was connected the earliest” and “predetermined type ofoperation unit”.

FIG. 14 illustrates an exemplary situation in which the main controllersMC1 and MC2 and the sub-controllers SC1, SC2, and SC3 are in apowered-on state.

This situation arises in the case where the user has further activatedthe main controller MC2 while SC1, SC2, SC3, and MC1 are in thepowered-on state, and the prompt screen is being displayed. In thiscase, steps S9 and S10 continue to be repeated even when MC2 becomespowered-on. If the user presses the L button of SC1 (step S10: YES inFIG. 6), that SC1 is paired with MC1, which is the searching MC (step S4in FIG. 6), and the display of the prompt screen is terminated (stepsS5: YES and S6 in FIG. 6). In this case, there is a powered-on unpairedMC (MC2) (step S1: YES in FIG. 6), and therefore MC2 is designated asthe searching MC (step S2 in FIG. 6). Next, since there are two unpairedpowered-on SCs (SC2 and SC3) (step S3: NO in FIG. 6), and there arepaired controllers (MC1 and SC1) (step S7: YES in FIG. 6), steps S3, S7,and S11 in FIG. 6 are repeated until any of the operation buttons of theunpaired MC (MC2) are pressed. If the user presses any of the operationbuttons of MC2 (step S11: YES in FIG. 6), MC2 is designated as thesearching MC (step S12 in FIG. 6), and the prompt screen is displayed(step S8 in FIG. 6). Note that if MC3 (not shown) were in the powered-onstate in addition to MC2, the MC that had any of its operation buttonspressed by the user is designated as the searching MC. If the userpresses the L button of SC2 (step S10: YES in FIG. 6), that SC2 ispaired with MC2, which is the searching MC (step S4 in FIG. 6).Subsequently, the display of the prompt screen is terminated, andpairing processing is terminated (S5: YES, step S6, step S1: NO in FIG.6).

Note that even if the sub-controllers SC1, SC2, and SC3 are activated atthe same time while the main controllers MC1 and MC2 are active (MC1 wasactivated before MC2), MC1, MC2, SC1, SC2, and SC3 are in the powered-onstate, and steps S9 and S10 continue to be repeated. If the user pressesthe L button of SC1 in this state, pairing is performed according to thesame procedure as that described above. Note that if the activation ofSC1, SC2, and SC3 is not simultaneous (e.g., SC1 is activated first)while MC1 and MC2 are active, there will be only one powered-on unpairedSC (SC1) (step S9: YES in FIG. 6), and therefore SC1 and MC1 are pairedup (step S4 in FIG. 6). Subsequently, MC2 is designated as the searchingMC (step S2 in FIG. 6) and paired with SC2, which is whichever one ofthe two powered-on unpaired SCs (SC2 and SC3) had its L button pressedby the user (steps S3: N0, S7: YES, S11: YES, S12, S8, S9: N0, S10: YES,and S4 in FIG. 6), and then the display of the prompt screen isterminated and the pairing processing is terminated (steps S5: YES, S6,S1: NO in FIG. 6).

According to the present embodiment, when a main controller isactivated, a message (prompt screen) is displayed to prompt the user topress the L button of the sub-controller that is to paired with thatmain controller. If the user looking at the prompt screen presses the Lbutton of a sub-controller, that sub-controller and the main controllerare paired up. Accordingly, pairing can be performed as desired by theuser without the main controller and the sub-controller being directlyconnected to each other with a cable or the like.

Also, if one sub-controller is already in the powered-on state when amain controller is activated, that sub-controller and the maincontroller are paired up without displaying the prompt screen. Thisenables saving time for the user.

Note that although pairing between a main controller and asub-controller is described in the above embodiment, there is nolimitation to this. The present invention is applicable when performingwith other controllers, as long as they are controllers that areconnected to a gaming apparatus. The present invention is alsoapplicable to the case where paired controllers are furthermore pairedwith another controller (e.g., the case of associating three or morecontrollers with each other). Also, the controllers that are paired upmay be the same type of controller. For example, one sub-controller maybe paired with another sub-controller. Also, although pairing betweenone type of main controller and one type of sub-controller is describedin the above embodiment, there is no limitation to this. This presentinvention is also applicable to the case where there are multiple typesof main controllers or sub-controller, or both.

Although the case where one player character is controlled with the maincontroller and the sub-controller is described in the above embodiment,the target of control is not limited to being one character. Forexample, the present invention is also applicable to the case ofcontrolling a group made up of multiple characters, and the case wheremultiple controllers that each control one character are associated witheach other, and the user controls multiple characters by operating theassociated controllers.

Although the case where pairing processing is performed before a gamestarts is described in the above embodiment, pairing processing may beperformed when a game is in progress. For example, pairing processingmay be performed in the case where a sub-controller is powered-off whena game is in progress (e.g., the case where the user mistakenly pressedthe power button, or the case where the battery of a sub-controller hasrun out).

In the above embodiment, in the case where the two sub-controllers SC1and SC2 are active when the main controller MC1 is activated, thepairing partner of the main controller MC1 is the sub-controller onwhich a predetermined operation (the pressing of the L button) wasperformed (see FIGS. 1A to 1D), but there is no limitation to this. Forexample, the pairing partner of the main controller MC1 may be whicheverof the two sub-controllers SC1 and SC2 has the lower (or higher)controller number, or may be a randomly selected one of the twosub-controllers SC1 and SC2. Also, it is not necessarily necessary todisplay the prompt screen (see FIG. 1B). For example, if the user knowsthe procedure for performing pairing, there is no need to display theprompt screen since the user is aware of the need to perform apredetermined operation (the pressing of the L button) on thesub-controller that is to be paired.

Although the example of an action game is described in the aboveembodiment, there is no limitation to this. The present invention isalso applicable to games in various genres, such as RPGs (role playinggames), shooting games, fighting games, and adventure games. The presentinvention is also applicable to games in which a team of characterscontrolled by multiple users or characters controlled by the CPUcooperate to fight an enemy character, and games in which the enemycharacter is a character controlled by another user.

Although the case of implementing a game with a home gaming apparatus isdescribed in the above embodiment, there is no limitation to this. Thepresent invention is also applicable to the case of implementing a gamewith an arcade gaming apparatus, a personal computer in which gamesoftware is loaded, and the like.

The present invention is also applicable to the case of pairingoperation units other than controllers. For example, the presentinvention is also applicable to cases where, for example, one computeris operated by multiple users using respective keyboards, or pairing isperformed between a keyboard and a mouse used by each user.

The computer and recording medium of the present invention are notlimited to the embodiments described above. The specific configurationsof the computer and recording medium of the present invention can bedesigned and modified in various ways.

1. A computer to which two or more of one or more types of operationunits for performing an operation can be connected, the computercomprising: a reception unit that receives, from each operation unitthat is connected, identification information that is information foridentifying the operation unit, and operation information that isinformation output in accordance with an operation performed on theoperation unit; an association setting unit that sets an associationbetween connected operation units based on the identificationinformation received from the connected operation units and anassociation condition that is set in advance; and an execution unit thatexecutes processing on a same processing target based on the operationinformation received from the associated operation units.
 2. Thecomputer according to claim 1, wherein the association setting unit setsan association between, among the connected operation units, a firstoperation unit that was selected based on a selection condition that isset in advance and a second operation unit that can be associated withthe first operation unit.
 3. The computer according to claim 1, whereinin a case where the connected operation units include a first operationand two or more second operation units that can be associated with thefirst operation unit, the association setting unit sets an associationbetween the first operation unit and, among the two or more secondoperation units, a second operation unit that transmitted predeterminedoperation information.
 4. The computer according to claim 3, furthercomprising a first presentation control unit that, in a case where twoor more second operation units exist, causes a first presentation unitto present information for prompting a user to perform the predeterminedoperation on an operation unit that is to be associated with the firstoperation unit.
 5. The computer according to claim 1, further comprisinga second presentation control unit that, in a case where no operationunit that can be associated with a first operation unit is connected,causes a second presentation unit to present information for prompting auser to select an operation unit that is to be associated with the firstoperation unit.
 6. The computer according to claim 1, wherein theassociation setting unit sets an association between, among theconnected operation units, only operation units for which an associationis not set.
 7. The computer according to claim 6, wherein in a casewhere an operation unit for which an association has already been setexists, the association setting unit also designates an operation unitthat transmitted second predetermined operation information as anassociation setting target.
 8. The computer according to claim 2,wherein the selection condition is being a predetermined type ofoperation unit from among a plurality of types of operation units. 9.The computer according to claim 2, wherein the selection condition isselection of an operation unit among a plurality of connected operationunits in order of earliest connection.
 10. The computer according toclaim 1, wherein the two or more operation units include two types ofoperation units, and the association condition is association of onetype of operation unit to the other type of operation unit.
 11. Thecomputer according to claim 1, wherein the execution unit generates agame space and an object that performs an action in the game space, andexecutes action processing on the object as the same processing target.12. The computer according to claim 1, wherein the connection isconnection by wireless communication.
 13. A computer-readable recordingmedium having recorded thereon a program for causing a computer, towhich two or more of one or more types of operation units for performingan operation can be connected, to function as: a reception unit thatreceives, from each operation unit that is connected, identificationinformation that is information for identifying the operation unit, andoperation information that is information output in accordance with anoperation performed on the operation unit; an association setting unitthat sets an association between connected operation units based on theidentification information received from the connected operation unitsand an association condition that is set in advance; and an executionunit that executes processing on a same processing target based on theoperation information received from the associated operation units. 14.The recording medium according to claim 13, wherein the associationsetting unit sets an association between, among the connected operationunits, a first operation unit that was selected based on a selectioncondition that is set in advance and a second operation unit that can beassociated with the first operation unit.
 15. The recording mediumaccording to claim 13, wherein in a case where the connected operationunits include a first operation and two or more second operation unitsthat can be associated with the first operation unit, the associationsetting unit sets an association between the first operation unit and,among the two or more second operation units, a second operation unitthat transmitted predetermined operation information.
 16. The recordingmedium according to claim 15, further causing the computer to functionas a first presentation control unit that, in a case where two or moresecond operation units exist, causes a first presentation unit topresent information for prompting a user to perform the predeterminedoperation on an operation unit that is to be associated with the firstoperation unit.
 17. The recording medium according to claim 13, furthercausing the computer to function as a second presentation control unitthat, in a case where no operation unit that can be associated with afirst operation unit is connected, causes a second presentation unit topresent information for prompting a user to select an operation unitthat is to be associated with the first operation unit.
 18. Therecording medium according to claim 13, wherein the association settingunit sets an association between, among the connected operation units,only operation units for which an association is not set.
 19. Therecording medium according to claim 18, wherein in a case where anoperation unit for which an association has already been set exists, theassociation setting unit also designates an operation unit thattransmitted second predetermined operation information as an associationsetting target.
 20. The recording medium according to claim 14, whereinthe selection condition is being a predetermined type of operation unitfrom among a plurality of types of operation units.
 21. The recordingmedium according to claim 14, wherein the selection condition isselection of an operation unit among a plurality of connected operationunits in order of earliest connection.
 22. The recording mediumaccording to claim 13, wherein the two or more operation units includetwo types of operation units, and the association condition isassociation of one type of operation unit to the other type of operationunit.
 23. The recording medium according to claim 13, wherein thecomputer is a gaming apparatus, and the execution unit generates a gamespace and an object that performs an action in the game space, andexecutes action processing on the object as the same processing target.24. The recording medium according to claim 13, wherein the connectionis connection by wireless communication.